From: kaf24@striker.cl.cam.ac.uk Date: Thu, 5 Dec 2002 00:12:21 +0000 (+0000) Subject: bitkeeper revision 1.7.2.1 (3dee99e5zKIwL56NUrPTsfwwlmAvsQ) X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~19118^2^2 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=c819f73bf4cf9b46865b57d8f7e3d57aae5f116d;p=xen.git bitkeeper revision 1.7.2.1 (3dee99e5zKIwL56NUrPTsfwwlmAvsQ) domain.c: Avoid scheduling idle domain unnecessarily. Good for performance :-) --- diff --git a/xen-2.4.16/common/domain.c b/xen-2.4.16/common/domain.c index a1d5de21c9..e3c3d8ce32 100644 --- a/xen-2.4.16/common/domain.c +++ b/xen-2.4.16/common/domain.c @@ -253,7 +253,7 @@ void release_task(struct task_struct *p) asmlinkage void schedule(void) { - struct task_struct *prev, *next, *p; + struct task_struct *prev, *next; struct list_head *tmp; int this_cpu; @@ -286,11 +286,11 @@ asmlinkage void schedule(void) } clear_bit(_HYP_EVENT_NEED_RESCHED, &prev->hyp_events); + /* Round-robin, skipping idle where possible. */ next = NULL; list_for_each(tmp, &schedule_data[smp_processor_id()].runqueue) { - p = list_entry(tmp, struct task_struct, run_list); - next = p; - break; + next = list_entry(tmp, struct task_struct, run_list); + if ( next->domain != IDLE_DOMAIN_ID ) break; } prev->has_cpu = 0; @@ -402,7 +402,7 @@ int setup_guestos(struct task_struct *p, dom0_newdomain_t *params) unsigned long cur_address, end_address, alloc_address, vaddr; unsigned long virt_load_address, virt_stack_address, virt_shinfo_address; unsigned long virt_ftable_start_addr = 0, virt_ftable_end_addr; - unsigned long ft_mapping = frame_table; + unsigned long ft_mapping = (unsigned long)frame_table; unsigned int ft_size = 0; start_info_t *virt_startinfo_address; unsigned long long time; @@ -410,7 +410,6 @@ int setup_guestos(struct task_struct *p, dom0_newdomain_t *params) l1_pgentry_t *l1tab = NULL; struct pfn_info *page = NULL; net_ring_t *net_ring; - blk_ring_t *blk_ring; if ( strncmp(__va(mod[0].mod_start), "XenoGues", 8) ) {